package com.example.service;

import com.example.pojo.Acct;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.vo.ResultVo;
import com.github.pagehelper.PageInfo;

import java.sql.Date;

/**
 * <p>
 * 账号表 服务类
 * </p>
 *
 * @author wsl
 * @since 2022-03-27
 */
public interface IAcctService extends IService<Acct> {


    /**
     * 新增账号
     * @param account
     * @return
     */
    ResultVo addAccount(Acct account);

    /**
     * 修改账号密码
     * @param account
     * @return
     */
    ResultVo updateAccountPwd(Acct account);

    /**
     * 删除账号
     * @param accountId
     * @return
     */
    ResultVo deleteAccount(Integer accountId);

    /**
     * @param accountName 账号名称
     * @param phone 手机号码
     * @param enabled 是否启用
     * @param start 开始时间
     * @param end 结束时间
     * @param pageNum 页码
     * @param pageSize 页面尺寸
     * @return 分页查询的账户信息
     */
    PageInfo<Acct> getAccountsPaging(String accountName, String phone, Integer enabled, Date start, Date end, Integer pageNum, Integer pageSize);

    /**
     * 批量删除账号
     * @param accountIds
     * @return
     */
    ResultVo deleteAccountBatch(Integer[] accountIds);

    /**
     * 修改账号
     * @param account
     * @return
     */
    ResultVo updateAccount(Acct account);
}
